package cn.wolfcode.service;

import cn.wolfcode.domain.Employee;
import cn.wolfcode.qo.QueryObject;
import cn.wolfcode.qo.ResultPage;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * 部门Service接口
 */
public interface IEmployeeService {
    /**
     * 部门新增
     *
     * @param employee
     */
    void save(Employee employee, Long[] roleIds);

    /**
     * 部门删除
     *
     * @param id
     */
    void delete(Long id);

//    /**
//     * 部门新增
//     *
//     * @param employee
//     */
//    void update(Employee employee);

    /**
     * 根据ID查部门
     *
     * @param id 传入部门的ID
     * @return 根据ID 查询部门对象
     */
    Employee get(Long id);

    /**
     * 查询所有
     *
     * @return
     */
    List<Employee> listAll();

    PageInfo<Employee> query(QueryObject qo);

    void deleteMiddleTable(Long id);

    /**
     * 校验username
     * @param username
     * @return
     */
    Boolean checkUsername(String username);

 //   Employee checkUserByUsernameAndPassword(String username, String password);

    //登录
    void login(String username, String password);

    Employee selectByUsername(String username);
}